﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Drawing;

namespace MossmanMill.View
{
    class Fonts
    {
        
        public static StringFormat VERTICAL = new StringFormat(StringFormatFlags.DirectionVertical);

        private static StringFormat _center;

        public static StringFormat center
        {
            get {
                if (_center != null) return _center;
                _center = new StringFormat();
                _center.Alignment = StringAlignment.Center;
                _center.LineAlignment = StringAlignment.Center;
                return _center;
            }
        }

        
        private static Font _smallArial,
                            _smallCourier,
                            _mediumArial,
                            _mediumCourier,
                            _smallTimes,
                            _mediumTimes,
                            _largeTimes,
                            _largeArial,
                            _largeCourier;

        public static Font smallArial {
            get {
                if (_smallArial != null) return _smallArial;
                _smallArial = new Font("Arial", 8);
                return _smallArial; 
            }
        }
        public static Font smallCourier {
            get {
                if (_smallCourier != null) return _smallCourier;
                _smallCourier = new Font("Courier", 8);
                return _smallCourier;
            }
        }
        public static Font mediumArial {
            get {
                if (_mediumArial != null) return _mediumArial;
                _mediumArial = new Font("Arial", 12);
                return _mediumArial;
            }
        }
        public static Font mediumCourier {
            get {
                if (_mediumCourier != null) return _mediumCourier;
                _mediumCourier = new Font("Courier", 12);
                return _mediumCourier;
            }
        }
        public static Font smallTimes {
            get {
                if (_smallTimes != null) return _smallTimes;
                _smallTimes = new Font("Times New Roman", 8);
                return _smallTimes;
            }
        }
        public static Font mediumTimes {
            get {
                if (_mediumTimes != null) return _mediumTimes;
                _mediumTimes = new Font("Times New Roman", 12);
                return _mediumTimes;
            }
        }
        public static Font largeTimes
        {
            get
            {
                if (_largeTimes != null) return _largeTimes;
                _largeTimes = new Font("Times New Roman", 24);
                return _largeTimes;
            }
        }
        public static Font largerCourier
        {
            get
            {
                if (_largeCourier != null) return _largeCourier;
                _largeCourier = new Font("Courier", 24);
                return _largeCourier;
            }
        }
        public static Font largeArial
        {
            get
            {
                if (_largeArial != null) return _largeArial;
                _largeArial = new Font("Arial", 24);
                return _largeArial;
            }
        }

    }
}
